<!doctype html>
<html>
  <head>
    <title>Using dataTransfer in new thread</title>
    <style type="text/css">
blockquote { height: 100px; width: 100px; background: orange; margin: 0; padding: 0; float: left; }
blockquote + blockquote { background: blue; }
blockquote + blockquote + blockquote { background: fuchsia; }
blockquote + div { clear: left; }
    </style>
    <script type="text/javascript" src="/resources/testharness.js"></script>
    <script type="text/javascript" src="/resources/testharnessreport.js"></script>
    <script type="text/javascript">
setup(function () {},{explicit_done:true,explicit_timeout:true});
window.onload = function () {

  var orange  = document.getElementsByTagName('blockquote')[0],
      blue    = document.getElementsByTagName('blockquote')[1],
      fuchsia = document.getElementsByTagName('blockquote')[2],
      evtdone = {};

  orange.ondragstart = function (e) {
    e.dataTransfer.effectAllowed = 'copy';
    e.dataTransfer.setData('text','dragstart real data');
    var dataTransfer = e.dataTransfer;
    setTimeout(function () {
      test(function () {
        assert_equals( dataTransfer.getData('text'), '', 'step 1' );
        dataTransfer.setData('text','new thread after dragstart');
        assert_equals( dataTransfer.getData('text'), '', 'step 2' );
      },'dragstart data store should be protected after new thread starts');
    },0);
  };

  fuchsia.ondragenter = fuchsia.ondragover = function (e) {
    e.preventDefault();
  };

  fuchsia.ondrop = function (e) {
    e.preventDefault();
    var dataTransfer = e.dataTransfer;
    setTimeout(function () {
      test(function () {
        assert_equals( dataTransfer.getData('text'), '', 'step 1' );
        dataTransfer.setData('text','new thread after dragstart');
        assert_equals( dataTransfer.getData('text'), '', 'step 2' );
      },'drop data store should be protected after new thread starts');
      done();
    },0);
  };

};
    </script>
  </head>
  <body>
    <p>Drag the orange square over the blue square then the fuchsia square, then release it.</p>
    <blockquote draggable="true"></blockquote>
    <blockquote></blockquote>
    <blockquote></blockquote>
    <div id="log"></div>
    <noscript><p>Enable JavaScript and reload</p></noscript>
  </body>
</html>
